Enterprise Version
abstract mechanics